package com.ruoyi.wgjlcData.service;

import com.ruoyi.wgjlcData.domain.plat.DataWgjlcPpnl;

import java.util.List;
import java.util.concurrent.Future;

/**
 * 无轨胶轮车-爬坡能力测试项Service接口
 * 
 * @author ruoyi
 * @date 2024-02-27
 */
public interface IDataWgjlcPpnlService 
{
    /**
     * 查询无轨胶轮车-爬坡能力测试项
     * 
     * @param ppnlId 无轨胶轮车-爬坡能力测试项主键
     * @return 无轨胶轮车-爬坡能力测试项
     */
    public DataWgjlcPpnl selectDataWgjlcPpnlByPpnlId(Long ppnlId);

    /**
     * 查询无轨胶轮车-爬坡能力测试项列表
     * 
     * @param dataWgjlcPpnl 无轨胶轮车-爬坡能力测试项
     * @return 无轨胶轮车-爬坡能力测试项集合
     */
    public List<DataWgjlcPpnl> selectDataWgjlcPpnlList(DataWgjlcPpnl dataWgjlcPpnl);

    /**
     * 新增无轨胶轮车-爬坡能力测试项
     * 
     * @param dataWgjlcPpnl 无轨胶轮车-爬坡能力测试项
     * @return 结果
     */
    public int insertDataWgjlcPpnl(DataWgjlcPpnl dataWgjlcPpnl);

    /**
     * 修改无轨胶轮车-爬坡能力测试项
     * 
     * @param dataWgjlcPpnl 无轨胶轮车-爬坡能力测试项
     * @return 结果
     */
    public int updateDataWgjlcPpnl(DataWgjlcPpnl dataWgjlcPpnl);

    /**
     * 查询无轨胶轮车-爬坡能力测试项
     *
     * @param dataTaskId
     * @return 无轨胶轮车-爬坡能力测试项
     */
    public Future<List<DataWgjlcPpnl>> selectDataWgjlcPpnlByDataTaskId(Long dataTaskId);

    /**
     * 修改状态为2
     */
    public int updateDataWgjlcPpnlByDataTaskId(Long dataTaskId);

    /**
     * 批量新增无轨胶轮车-爬坡能力测试项
     *
     * @param dataWgjlcPpnl 无轨胶轮车-爬坡能力测试项
     * @return 结果
     */
    public int batchDataWgjlcPpnl(List<DataWgjlcPpnl> dataWgjlcPpnl);

    /**
     * 批量删除无轨胶轮车-爬坡能力测试项
     * 
     * @param ppnlIds 需要删除的无轨胶轮车-爬坡能力测试项主键集合
     * @return 结果
     */
    public int deleteDataWgjlcPpnlByPpnlIds(Long[] ppnlIds);

    /**
     * 删除无轨胶轮车-爬坡能力测试项信息
     * 
     * @param ppnlId 无轨胶轮车-爬坡能力测试项主键
     * @return 结果
     */
    public int deleteDataWgjlcPpnlByPpnlId(Long ppnlId);
}
